home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 27 / CU Amiga Magazine's Super CD-ROM 27 (1998)(EMAP Images)(GB)[!][issue 1998-10].iso / CUCD / Utilities / GrowStack / ksc_GrowStack.readme < prev   
Encoding:
Text File  |  1998-08-09  |  3.2 KB  |  77 lines

  1. Short:    Make tasks use a bigger stack
  2. Author:   Andreas R. Kleinert, Kyzer/CSG
  3. Uploader: Kyzer/CSG <kyzer@4u.net>
  4. Type:     util/cli
  5.  
  6. If  you  get crashes from "ramlib" or IPrefs, it may be because their stack
  7. is  too  small.  Normally you can make programs use a bigger stack by using
  8. the  "stack"  command  before  executing them, but IPrefs and ramlib do not
  9. work in the normal way.
  10.  
  11. There's   a   couple  of  programs  written  by  Andreas  Kleinert,  called
  12. "RamLibPatch"  and "IPrefsPatch", which can increase the size of the ramlib
  13. and  IPrefs  stack,  respectively.  It's  a  simple  program  he's written,
  14. quickly,  and  it seems to work fine. But, as usual, it can be done smaller
  15. and better in assembler.
  16.  
  17. So,  I've  made "GrowStack". It is much smaller than both those patches, it
  18. allows  you  to  specify  the  two important options - name of task and new
  19. stack  size  - on the command line , therefore you only need one program to
  20. apply any number of stack size changes.
  21.  
  22.  
  23. USAGE:
  24.  
  25. GrowStack <name of task> <new size of stack>
  26.  
  27. - GrowStack requires the task to already be loaded in memory, otherwise it
  28.   will print 'object not found'. This is not a problem for ramlib (which
  29.   is always in memory), but it does mean that to patch IPrefs, you have to
  30.   run GrowStack _after_ IPrefs in the startup.
  31.  
  32. - There must be enough memory for the stack, otherwise it will print 'not
  33.   enough memory'.
  34.  
  35. - It cannot shrink stacks, only grow them. If the stack is already as big
  36.   as (or bigger than) the size you specify, then nothing will be done.
  37.  
  38. - changing another task's stack is _not allowed_, but all current Amigas
  39.   allow it to be done successfully, despite this rule. Future versions
  40.   of the OS,  or programs that enforce system rules, may cause this
  41.   program to crash or fail.
  42.  
  43. - The memory used by the old stack is NOT freed.
  44.  
  45. SHOULD I USE THIS PROGRAM?
  46.  
  47. The same rules as ARK's patches (see util/sys/GrowStack.readme) apply:
  48.  
  49. - if you occasionally get crashes from IPrefs or ramlib, try using
  50.   this program as specified, and perform whatever you did to make it
  51.   crash. If it nolonger crashes, great.
  52.  
  53. - If it didn't prevent the crash, or you don't normally get crashes
  54.   from these two tasks, then there is no need to install or use this
  55.   program.
  56.  
  57.  
  58. INSTALLATION:
  59.  
  60. To  perform  both  the  IPrefsPatch and RamLibPatch, put these two lines in
  61. your s:startup-sequence, exactly as written, just after IPrefs is started:
  62.  
  63. GrowStack "« IPrefs »" 16384
  64. GrowStack "ramlib" 16384
  65.  
  66. This makes IPrefs and ramlib both have 16Kb stacks instead of 4k stacks.
  67.  
  68. ****************************************************************************
  69. *          THIS PROGRAM IS PART OF THE "KYZER'S SMALLS" COLLECTION         *
  70. *                                                                          *
  71. *      The KyzSmlClxn is a set of very small, but useful CLI commands.     *
  72. *                                                                          *
  73. *   Source in assembler is included. Install by copying the command to C:  *
  74. *                                                                          *
  75. *     Kyzer/CSG, 49 Fairview Road, AB22 8ZG, Scotland ---- kyzer@4u.net    *
  76. ****************************************************************************
  77.